package com.jidu.domain;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.jidu.common.annotation.Excel;
import com.jidu.common.core.domain.BaseEntity;

/**
 * 班级上课时间安排配置对象 class_time_config
 * 
 * @author xuliang
 * @date 2024-07-25
 */
@ApiModel(value = "ClassTimeConfig",description = "班级上课时间安排配置对象")
@NoArgsConstructor
@AllArgsConstructor
@Builder
@TableName("class_time_config")
@Data
public class ClassTimeConfig extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    @TableId(type = IdType.AUTO)
    private Long id;

    /** 班级id */
    @Excel(name = "班级id")
    @ApiModelProperty(value = "班级id")
    private Long classId;

    /** 1-7表示周一到周日 */
    @Excel(name = "1-7表示周一到周日")
    @ApiModelProperty(value = "1-7表示周一到周日")
    private String weekday;

    /** 上课日 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty(value = "上课日")
    private Date classDate;

    /** 上课开始时间 */
    @JsonFormat(pattern = "HH:mm:ss")
    @Excel(name = "上课开始时间", width = 30, dateFormat = "HH:mm:ss")
    @ApiModelProperty(value = "上课开始时间")
    private Date startTime;

    /** 上课结束时间 */
    @JsonFormat(pattern = "HH:mm:ss")
    @Excel(name = "上课结束时间", width = 30, dateFormat = "HH:mm:ss")
    @ApiModelProperty(value = "上课结束时间")
    private Date endTime;

    /** 删除标志（0正常，1删除） */
    private String delFlag;

    /** 状态（0未开始，1已上课，3未上课） */
    @Excel(name = "状态", readConverterExp = "0=未开始，1已上课，2后补延期")
    @ApiModelProperty(value = "状态")
    private String status;
    @TableField(exist = false)
    private String sTime;
    @TableField(exist = false)
    private String eTime;

}
